a93fe7
@@ -573,7 +573,7 @@
static ExpressionTree pushDownNot(ExpressionTree root) {
      * @param expr The expression to clean up
      * @return The cleaned up expression
      */
-    ExpressionTree foldMaybe(ExpressionTree expr) {
+    static ExpressionTree foldMaybe(ExpressionTree expr) {
       if (expr.children != null) {
         for(int i=0; i < expr.children.size(); ++i) {
           ExpressionTree child = foldMaybe(expr.children.get(i));
@@ -594,6 +594,9 @@
ExpressionTree foldMaybe(ExpressionTree expr) {
             expr.children.set(i, child);
           }
         }
+        if (expr.children.isEmpty()) {
+          return new ExpressionTree(TruthValue.YES_NO_NULL);
+        }
       }
       return expr;
     }
